Curso Académico:
2021/22
439 - Graduado en Ingeniería Informática
30244 - Verificación y validación
Información del Plan Docente
Año académico:
2021/22
Asignatura:
30244 - Verificación y validación
Centro académico:
110 - Escuela de Ingeniería y Arquitectura
Titulación:
439 - Graduado en Ingeniería Informática
Créditos:
6.0
Curso:
3
Periodo de impartición:
Segundo semestre
Clase de asignatura:
---
Materia:
---
1.1. Objetivos de la asignatura
La asignatura y sus resultados previstos responden a los siguientes planteamientos y objetivos:
Tras haber cursado la asignatura de Ingeniería del Software, donde se han presentado los principios básicos de la verificación y validación del software, en esta asignatura de la intensificación de Ingeniería del Software el alumno va a aprender a planificar e integrar las pruebas dentro del ciclo de vida de desarrollo de productos software, prestando especial atención a la evaluación de la interacción persona ordenador, y la automatización de las pruebas. Para la evaluación de la interfaz persona ordenador se tomará como punto de partida los conocimientos adquiridos en la asignatura de Interfaz Persona Ordenador. En cuanto a la automatización de las pruebas, se analizarán diferentes herramientas existentes para soportar esta automatización y la arquitectura de estas herramientas.
La asignatura tiene un marcado carácter aplicado. El alumno aprenderá los conceptos de verificación y validación aplicándolos a un conjunto de aplicaciones informáticas presentadas tanto en las clases de problemas, como en las distintas sesiones de las prácticas de laboratorio, así como proyectos informáticos que los alumnos podrán desarrollar de forma conjunta con otras asignaturas de la intensificación (por ejemplo, las asignaturas de Ingeniería de Requisitos o Arquitecturas Software) o de la materia común de Ingeniería del Software (asignaturas de Ingeniería del Software o Proyecto Software).
Estos planteamientos y objetivos están alineados con algunos de los Objetivos de Desarrollo Sostenible, ODS, de la Agenda 2030 (https://www.un.org/sustainabledevelopment/es/) y determinadas metas concretas, de tal manera que la adquisición de los resultados de aprendizaje de la asignatura proporciona capacitación y competencia al estudiante para contribuir en cierta medida a su logro:
- Objetivo 9: Construir infraestructuras resilientes, promover la industrialización inclusiva y sostenible y fomentar la innovación.
Meta 9.1: Desarrollar infraestructuras fiables, sostenibles, resilientes y de calidad, incluidas infraestructuras regionales y transfronterizas, para apoyar el desarrollo económico y el bienestar humano, haciendo especial hincapié en el acceso asequible y equitativo para todos.
1.2. Contexto y sentido de la asignatura en la titulación
La asignatura de Verificación y Validación es una asignatura obligatoria englobada en la materia de tecnología específica en «Proceso de desarrollo y ciclo de vida» dentro de la intensificación de Ingeniería del Software. Esta asignatura se imparte dentro del primer cuatrimestre de la intensificación dada la importancia de la verificación y validación dentro del ciclo de vida de desarrollo de un producto software. Aunque la mayor parte de los errores de un software se detectan durante las pruebas del código fuente compilado, según las estadísticas, más del 50% de los errores de un producto software viene motivado por los defectos cometidos en las fases tempranas del desarrollo como la determinación de requisitos o el análisis. Por tanto, la verificación y validación del software resulta esencial y se debe aplicar a todos los elementos del ciclo de vida de un producto software.
1.3. Recomendaciones para cursar la asignatura
El alumno que curse esta asignatura ha de contar con una formación en métodos y técnicas de Ingeniería del Software del nivel de la asignatura de Ingeniería del Software, y de interacción con el usuario del nivel de la asignatura Interacción Persona Ordenador.
2. Competencias y resultados de aprendizaje
2.1. Competencias
Al superar la asignatura, el estudiante será más competente para:
- Diseñar, desarrollar, seleccionar y evaluar aplicaciones y sistemas informáticos, asegurando su fiabilidad, seguridad y calidad, conforme a principios éticos y a la legislación y normativa vigente.
- Diseñar y evaluar interfaces persona computador que garanticen la accesibilidad y usabilidad a los sistemas, servicios y aplicaciones informáticas.
- Desarrollar, mantener y evaluar servicios y sistemas software que satisfagan todos los requisitos del usuario y se comporten de forma fiable y eficiente, sean asequibles de desarrollar y mantener y cumplan normas de calidad, aplicando las teorías, principios, métodos y prácticas de la Ingeniería del Software.
- Identificar y analizar problemas y diseñar, desarrollar, implementar, verificar y documentar soluciones software sobre la base de un conocimiento adecuado de las teorías, modelos y técnicas actuales.
2.2. Resultados de aprendizaje
El estudiante, para superar esta asignatura, deberá demostrar los siguientes resultados:
- Es capaz de verificar el software mediante la realización de inspecciones.
- Es capaz de validar el software aplicando las técnicas más populares de prueba del software.
- Conoce y sabe aplicar las técnicas existentes para probar las Interfaces Persona Ordenador.
- Sabe crear un plan de pruebas, y gestionar las actividades involucradas en el proceso de pruebas.
- Es capaz de utilizar herramientas que asisten en la prueba del software.
2.3. Importancia de los resultados de aprendizaje
La verificación y validación del software puede llegar a suponer el 40% del tiempo dedicado al desarrollo de un producto software. Por tanto, resulta vital que el alumno conozca y sepa aplicar las técnicas y procesos de prueba existentes para abordar de forma óptima esta tarea. Lo que aprenda en esta asignatura, que complementa a lo ya aprendido en las asignaturas de Ingeniería del Software e Interacción Persona Ordenador, será un importante paso adelante en su formación como ingeniero de software.
3.1. Tipo de pruebas y su valor sobre la nota final y criterios de evaluación para cada prueba
El estudiante deberá demostrar que ha alcanzado los resultados de aprendizaje previstos mediante las siguientes actividades de evaluación:
Convocatoria de junio. La evaluación global de la asignatura se realiza a través de dos pruebas:
P1. Prueba escrita sobre los conceptos básicos de la asignatura en la que el estudiante tendrá que responder cuestiones cortas y resolver pequeños ejercicios. Se requiere una nota mínima de 5,0 puntos en esta prueba para aprobar la asignatura. Si se obtiene esta nota mínima, entonces la prueba pondera un 30% en la nota de la asignatura. La fecha de realización de esta prueba será la que la dirección de la EINA determine para la realización de la prueba global de evaluación de la asignatura.
P2. Trabajo práctico realizado en equipos. Se requiere una nota individual mínima de 5,0 puntos en esta prueba para aprobar la asignatura. Si se obtiene esta nota mínima, entonces la prueba pondera un 70% en la nota de la asignatura. El trabajo se entregará de forma electrónica con anterioridad a la fecha que la dirección de la EINA establezca para la realización de la prueba global de la asignatura. Con anterioridad, a lo largo del cuatrimestre, se habrán tenido que entregar versiones intermedias de algunos de los documentos que forman parte del trabajo (documento de plan de pruebas maestro, informe de pruebas, documento de plan de proyecto, documento de análisis y diseño revisado tras hacer una inspección del mismo), acompañadas de presentaciones en clase de dichos documentos, que servirán para que los equipos reciban realimentación sobre el trabajo por parte de los profesores de la asignatura. Si no se han realizado estas entregas y presentaciones parciales, además de enviar todos los entregables, deberán realizar un examen sobre el trabajo.
Es obligatorio realizar y entregar ambas pruebas para poder aprobar la asignatura. Si en una de las pruebas, o en las dos, la nota obtenida fuera inferior a 5,0, la calificación final de la asignatura será la media ponderada de las dos calificaciones (30% P1 y 70% P2), con un máximo de 4,0.
Se considerarán como no presentados en esta convocatoria a los alumnos que no hayan realizado ninguna de las dos pruebas P1 y P2, así como a aquellos que se hayan presentado a una de las pruebas, aprobándola, pero no se hayan presentado a la otra.
Convocatoria de septiembre. La evaluación global de la asignatura se realiza a través de dos pruebas análogas a las de la convocatoria de junio, con las mismas ponderaciones y exigencia de notas mínimas. La prueba P2 en septiembre consistirá en la entrega del trabajo y, en el caso de que no se hubieran realizado las entregas y presentaciones parciales durante el periodo de impartición de la asignatura, en la realización de un examen sobre el trabajo. Las calificaciones del alumno obtenidas en la convocatoria de junio en cualquier de las pruebas (P1 y P2) se mantienen en septiembre, salvo que el alumno opte por presentarse a la prueba correspondiente en esta nueva convocatoria, en cuyo caso prevalecerá la nueva calificación.
Para poder aprobar la asignatura en la convocatoria de septiembre, sigue siendo obligatorio haber aprobado ambas pruebas en alguna de las dos convocatorias. Si en una de las pruebas, o en las dos, la nota obtenida en septiembre fuera inferior a 5,0, la calificación final de la asignatura será la media ponderada de las dos calificaciones (30% P1 y 70% P2), con un máximo de 4,0.
Se considerarán como no presentados en esta convocatoria a los alumnos que no hayan realizado en septiembre ninguna de las dos pruebas P1 y P2, así como a aquellos que se hayan presentado y aprobado una de las pruebas en septiembre pero no se hayan presentado a la otra ni en junio ni en septiembre.
4. Metodología, actividades de aprendizaje, programa y recursos
4.1. Presentación metodológica general
El proceso de aprendizaje que se ha diseñado para esta asignatura se basa en lo siguiente:
- El estudio y trabajo continuado desde el primer día de clase.
- El aprendizaje de conceptos y metodologías para la verificación y validación de software a través de las clases magistrales, en las que se favorecerá la participación de los alumnos.
- La aplicación de tales conocimientos de verificación y validación de software en las clases de casos y problemas. En estas clases los alumnos desempeñarán un papel activo en la discusión de los casos y resolución de los problemas.
- Las clases de prácticas en laboratorio en las que el alumno aprenderá la tecnología necesaria para realizar la verificación y validación de software, relacionada con los conceptos y metodologías presentados en las clases magistrales y aplicados en las clases de casos y problemas.
- El trabajo en equipo, en el que cada equipo deberá establecer y ejecutar el plan de pruebas de un proyecto software. Cada equipo deberá entregar un documento electrónico con dicho plan de pruebas, así como los documentos generados por la ejecución del mismo. El proyecto software sobre el que versará el trabajo será anunciado en las primeras semanas del curso.
4.2. Actividades de aprendizaje
El programa que se ofrece al estudiante para ayudarle a lograr los resultados previstos comprende las siguientes actividades...
- En las clases impartidas en el aula se desarrollará el temario de la asignatura a través de clases magistrales, del análisis de caso y de la resolución de problemas de aplicación de los conceptos y técnicas presentadas en el programa de la asignatura.
- Las sesiones de prácticas se desarrollan en un laboratorio informático. A lo largo de sus sesiones cada alumno deberá realizar, individualmente o en equipo, trabajos directamente relacionados con los temas estudiados en la asignatura.
- Adicionalmente, se realizará un trabajo en equipos bajo la tutela del profesor, en el que cada equipo deberá establecer y ejecutar el plan de pruebas de un proyecto software.
- Existe la posibilidad de que se organice un taller de 2 horas de introducción al Desarrollo Dirigido por Pruebas (Test Driven Development, TDD) en colaboración con expertos del ámbito profesional. En tal caso, debido a que el ponente y otros asistentes pertenecen al mundo profesional, dos horas de clase se trasladarán a un viernes por la tarde. El interés formativo del taller es muy relevante, por lo que la asistencia al mismo, si se organiza, será obligatoria, excepto en casos debidamente justificados.
4.3. Programa
- Gestión del proceso de pruebas
- Técnicas y herramientas de pruebas dinámicas (testing)
- Técnicas y herramientas de evaluación estática
- Pruebas dinámicas y evaluación de Interfaces Persona Ordenador
4.4. Planificación de las actividades de aprendizaje y calendario de fechas clave
Calendario de sesiones presenciales y presentación de trabajos
La organización docente de la asignatura prevista es la siguiente.
- Clases en el aula (magistrales y de casos y problemas) (3 horas en una semana ordinaria, de las cuales, en el cómputo global del curso, aproximadamente 2 horas semanales corresponderán a clases magistrales y aproximadamente una hora semanal, a clases de casos y problemas, de acuerdo con el calendario académico que establezca la dirección de la EINA).
- Clases prácticas de laboratorio (una sesión de 2 horas cada dos semanas, en función del calendario académico que establezca la dirección de la EINA y de la reserva de laboratorios). Son sesiones de trabajo en la utilización de tecnologías para la verificación y validación de software en laboratorio, tuteladas por un profesor.
- Tutorías de los trabajos en equipo donde los alumnos plantean y ejecutan el plan de pruebas de un proyecto software.
Presentación de trabajos objeto de evaluación:
- La fecha límite para la entrega del trabajo práctico realizado en equipos será la misma que la dirección de la EINA establezca para la realización de la prueba P1. Las entregas y presentaciones parciales relativas al trabajo dependerán del calendario académico y se anunciarán oportunamente tanto en clase, el día de la presentación de la asignatura, como en la plataforma Moodle, a través del enunciado del trabajo.
Trabajo del estudiante
La dedicación del estudiante para alcanzar los resultados de aprendizaje en esta asignatura se estima en 150 horas distribuidas del siguiente modo:
- 60 horas, aproximadamente, de actividades presenciales: sesiones en el aula teóricas (30), de problemas (15) y sesiones en el laboratorio (15)
- 50 horas de trabajo en grupo
- 35 horas de trabajo y estudio individual efectivo (estudio de apuntes y textos, resolución de problemas, preparación de clases y prácticas, desarrollo de programas, etc.)
- 5 horas dedicadas a distintas pruebas de evaluación
El calendario de exámenes será determinado por la dirección de la EINA y las fechas de entrega de trabajos se anunciarán con suficiente antelación.